119 research outputs found

    Method overloading and overriding cause encapsulation flaw

    Get PDF
    International audienceBased on an experiment using three languages under .NET, this paper argues that the semantic differences between these languages regarding method overloading and overriding give rise to significant complexity and break encapsulation. We first recalls the various interpretations of overriding and overloading in object oriented languages through what we call language signatures. Then, we realize an experimentation with .NET components coded in different Programming languages in order to observe the global behavior. From this, we show that overriding and overloading are not compatible with a key property of components: encapsulation. We conclude that, in the current state of the art, in order to build predictable assembly, components must expose their internal structure! We propose a solution to this problem

    Implementing a Data Distribution Variant with a Metamodel, Some Models and a Transformation

    Get PDF
    International audienceIn this paper, we show how model transformations can be used to implement data distribution features in the software design process of a component. This approach is based on a single metamodel that defines data distribution abstractions and on the design of alternatives that are used to implement each data distribution variant. A model transformation is associated with the metamodel and the component metamodel we consider as the target. We show that this approach facilitates the derivation of different implementation strategies from the model of a component. We illustrate our approach with the example of distributed communication component software that implements one centralized and two peer-to-peer variants and we demonstrate the reusability of the transformation

    A Reusable Component for Communication and Data Synchronization in Mobile Distributed Interactive Applications

    Full text link
    In Distributed Interactive Applications (DIA) such as multiplayer games, where many participants are involved in a same game session and communicate through a network, they may have an inconsistent view of the virtual world because of the communication delays across the network. This issue becomes even more challenging when communicating through a cellular network while executing the DIA client on a mobile terminal. Consistency maintenance algorithms may be used to obtain a uniform view of the virtual world. These algorithms are very complex and hard to program and therefore, the implementation and the future evolution of the application logic code become difficult. To solve this problem, we propose an approach where the consistency concerns are handled separately by a distributed component called a Synchronization Medium, which is responsible for the communication management as well as the consistency maintenance. We present the detailed architecture of the Synchronization Medium and the generic interfaces it offers to DIAs. We evaluate our approach both qualitatively and quantitatively. We first demonstrate that the Synchronization Medium is a reusable component through the development of two game applications, a car racing game and a space war game. A performance evaluation then shows that the overhead introduced by the Synchronization Medium remains acceptable.Comment: In Proceedings WCSI 2010, arXiv:1010.233

    Dynamic composition and adaptation in adapt-medium

    Get PDF
    International audienceIn the presence of operational context changes, many applications must use dynamic adaptations in order to meet requirements. When an application has a set of distributed objects that collaborates to offer a particular function, adaptations involving simultaneous distributed processes may affect such collaborations, planning distributed adaptations is thus a complex task for developers. This paper presents Adapt-Medium, an architecture of adaptive distributed components. In the architecture, adaptations are realized by performing dynamic compositions of distributed components. We introduce a model-based process for 1) specifying architecture variants of such distributed components and 2) automatically generating adaptation plans that are performed at runtime to switch between architecture variants

    Contract Aware Components, 10 years after

    Get PDF
    The notion of contract aware components has been published roughly ten years ago and is now becoming mainstream in several fields where the usage of software components is seen as critical. The goal of this paper is to survey domains such as Embedded Systems or Service Oriented Architecture where the notion of contract aware components has been influential. For each of these domains we briefly describe what has been done with this idea and we discuss the remaining challenges.Comment: In Proceedings WCSI 2010, arXiv:1010.233

    Semantics based analysis of botnet activity from heterogeneous data sources

    Get PDF
    International audienceThe diversity in network devices, protocols, data sources and probes impose different challenges to uniformly measure and analyse network traffic. Analysing a network means considering distinctive reporting approaches and diverse methods to represent data, measure times or identify nodes. In this work, we tackle these challenges by relying on semantics, taking advantage of the ontologies' ability to map high-level network concepts to concrete information sources of different nature. In particular, we propose a simple architecture to map network concepts to data stored in relational databases. Based on this architecture, we implement a tool that looks for malicious bot activity, studying, from a unique point of view, DNS traffic from PCAP sources, and TCP connections from IPFIX reports. This approach is able to enhance current DNS based botnet detection methods, taking into account additional heterogeneous analysis elements

    Design process enabling adaptation in pervasive heterogeneous contexts

    Get PDF
    International audienceIn the next decades, the growth in population ageing will cause important problems to most industrialized countries. To tackle this issue, Ambient Assistive Living (AAL) systems can reinforce the well-being of elderly people, by providing emergency, autonomy enhancement, and comfort services. These services will postpone the need of a medicalized environment, and will allow the elderly to stay longer at home. However, each elderly has specific needs and a deployment environment of such services is likely unique. Furthermore, the needs evolve over time, and so does the deployment environment of the system. In this paper, we propose the use of a model-based development method, the adaptive medium approach, to enable dynamic adaptation of AAL systems. We also propose improvements to make it more suited to the AAL domain, such as considering heterogeneity and a composition model. The paper includes an evaluation of the prototype implementing the approach, and a comparison with related work

    Multilevel Contracts for Trusted Components

    Full text link
    This article contributes to the design and the verification of trusted components and services. The contracts are declined at several levels to cover then different facets, such as component consistency, compatibility or correctness. The article introduces multilevel contracts and a design+verification process for handling and analysing these contracts in component models. The approach is implemented with the COSTO platform that supports the Kmelia component model. A case study illustrates the overall approach.Comment: In Proceedings WCSI 2010, arXiv:1010.233

    Alignment of viewpoint heterogeneous design models: Emergency Department Case Study

    Get PDF
    International audienceGenerally, various models can be used to describe a given application domain on different aspects and thus give rise to several views. To have a complete view of the application domain, heterogeneous models need to be unified, which is a hard task to do. To tackle this problem, we have proposed a method to relate partial models without combining them in a single model. In our approach, partial models are organized as a network of models through a virtual global model called M1C (Model of correspondences between models) which conforms to a ubiquitous language based on a Meta-Model of Correspondences (MMC). This paper presents an application of our method to an “Emergency Department” case study. It has been performed as a collaborative process involving model designers and a supervisor. The focus is put on the building of the M1C model from 3 partial models

    OO languages late-binding signature

    No full text
    Most comparisons among OO languages focus on structural or philosophical features but rarely on dynamic ones. Beyond all these structural properties, late-binding is, to our opinion, the key property of OO paradigm; the operational consequence of inheritance use. All OO languages use late-binding, but do they all have the same interpretation? We show that the answer is no, not very surprisingly, but that almost each language has its own interpretation. We propose a simple procedure to compare latebinding interpretation of OO languages and introduce a late-binding signature of OO programming languages. This procedure can be used to study language interactions as we will show it for the Microsoft.NET framework.
    • …
    corecore